Today, in order for a service, such as a web service, to integrate with client side applications, many solutions use loose integration “hooks” to enable the service to plug into the application experience. As those in the industry will attest, few truly successful examples of loose integration exist. This is due in large part to the difficulty of delivering a rich user experience when services differ in capacity and, to the related problem of attempting to clearly define an interface between the client and the service in a way that can be easily understood and implemented.